From: Colin Walters Date: Tue, 29 Nov 2016 02:14:47 +0000 (-0500) Subject: traverse: Use g_hash_table_add X-Git-Tag: archive/raspbian/2022.1-3+rpi1~1^2~4^2~42^2~33 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https://%22%22/%22http:/www.example.com/cgi/%22https:/%22%22?a=commitdiff_plain;h=3a459bac2d25139cfb7810c17ed8eb4702160f57;p=ostree.git traverse: Use g_hash_table_add And "move semantics" via `g_steal_pointer()`. Just a minor code cleanup I noticed when I was hunting for a leak, which ended up being elsewhere. Closes: #598 Approved by: jlebon --- diff --git a/src/libostree/ostree-repo-traverse.c b/src/libostree/ostree-repo-traverse.c index 46f83240..d125f01a 100644 --- a/src/libostree/ostree-repo-traverse.c +++ b/src/libostree/ostree-repo-traverse.c @@ -349,8 +349,7 @@ traverse_iter (OstreeRepo *repo, g_debug ("Found file object %s", checksum); key = g_variant_ref_sink (ostree_object_name_serialize (checksum, OSTREE_OBJECT_TYPE_FILE)); - g_hash_table_replace (inout_reachable, key, key); - key = NULL; + g_hash_table_add (inout_reachable, g_steal_pointer (&key)); } else if (iterres == OSTREE_REPO_COMMIT_ITER_RESULT_DIR) { @@ -364,14 +363,12 @@ traverse_iter (OstreeRepo *repo, g_debug ("Found dirtree object %s", content_checksum); g_debug ("Found dirmeta object %s", meta_checksum); key = g_variant_ref_sink (ostree_object_name_serialize (meta_checksum, OSTREE_OBJECT_TYPE_DIR_META)); - g_hash_table_replace (inout_reachable, key, key); - key = NULL; + g_hash_table_add (inout_reachable, g_steal_pointer (&key)); key = g_variant_ref_sink (ostree_object_name_serialize (content_checksum, OSTREE_OBJECT_TYPE_DIR_TREE)); if (!g_hash_table_lookup (inout_reachable, key)) { - g_hash_table_replace (inout_reachable, key, key); - key = NULL; + g_hash_table_add (inout_reachable, g_steal_pointer (&key)); if (!traverse_dirtree (repo, content_checksum, inout_reachable, ignore_missing_dirs, cancellable, error))